// 翻译类别
window.categories = window.categories || {};

// 提示词模板
const TRANSLATE_TEMPLATES = {
  // 基础提示词
  basePrompt: '你是一个微博平台神评论专家，能根据输入，分析提起关键点，生成引人注目的神回复。',
  
  // 格式要求
  formatRequirements: `## 格式要求
1. 请基于以下内容生成恰好 {k} 条简短而有共鸣的中文评论
2. 只输出一行，使用 '||' 连接各条评论
3. 不要输出其它任何说明或前后缀`,
  
  // 翻译模板
  enToZh: `## 任务说明
请将以下英文内容翻译为自然流畅的中文。

## 原文
{input}

## 要求
1. 保持原意的同时符合中文表达习惯
2. 保留专有名词和术语
3. 确保术语准确一致`,

  zhToEn: `## 任务说明
请将以下中文内容翻译为简洁准确的英文。

## 原文
{input}

## 要求
1. 符合英文书面表达习惯
2. 保持专业术语准确
3. 语言简洁明了`,

  zhToJp: `## 任务说明
请将以下中文内容翻译为自然礼貌的日语。

## 原文
{input}

## 要求
1. 注意敬语使用
2. 符合日语表达习惯
3. 保持礼貌得体的语气`,

  zhToKo: `## 任务说明
请将以下中文内容翻译为自然的韩语口语。

## 原文
{input}

## 要求
1. 使用自然的口语表达
2. 符合韩语表达习惯
3. 保持适当的敬语等级`,

  zhPolish: `## 任务说明
请将以下中文内容改写为更书面、更优雅的表达。

## 原文
{input}

## 要求
1. 提升语言表达的文雅度
2. 保持原意不变
3. 使表达更加规范专业`
};

window.categories.translate = {
  "id": "translate",
  "name": "翻译",
  "layout": "row",
  
  // 获取提示词方法
  getPrompt: function(templateName, variables = {}) {
    const base = TRANSLATE_TEMPLATES.basePrompt + '\n\n' + TRANSLATE_TEMPLATES.formatRequirements + '\n\n';
    const template = TRANSLATE_TEMPLATES[templateName] || '';
    let prompt = base + template;
    
    // 替换变量
    Object.entries(variables).forEach(([key, value]) => {
      prompt = prompt.replace(new RegExp(`\\{${key}\\}`, 'g'), value);
    });
    
    return prompt;
  },
  
  "subcategories": [
    { 
      "id": "en-zh", 
      "name": "英→中", 
      "icon": "🇬🇧", 
      "subtitle": "自然地道",
      "getPrompt": function(vars = {}) {
        return window.categories.translate.getPrompt('enToZh', vars);
      }
    },
    { 
      "id": "zh-en", 
      "name": "中→英", 
      "icon": "🇨🇳", 
      "subtitle": "准确简洁",
      "getPrompt": function(vars = {}) {
        return window.categories.translate.getPrompt('zhToEn', vars);
      }
    },
    { 
      "id": "zh-jp", 
      "name": "中→日", 
      "icon": "🇯🇵", 
      "subtitle": "礼貌敬语",
      "getPrompt": function(vars = {}) {
        return window.categories.translate.getPrompt('zhToJp', vars);
      }
    },
    { 
      "id": "zh-ko", 
      "name": "中→韩", 
      "icon": "🇰🇷", 
      "subtitle": "自然口语",
      "getPrompt": function(vars = {}) {
        return window.categories.translate.getPrompt('zhToKo', vars);
      }
    },
    { 
      "id": "zh-polish", 
      "name": "中文润色", 
      "icon": "🀄", 
      "subtitle": "书面更优雅",
      "getPrompt": function(vars = {}) {
        return window.categories.translate.getPrompt('zhPolish', vars);
      }
    }
  ]
};